The present invention generally relates to resource allocation and planning, and more particularly to tools for allocating resources amongst projects in a hierarchy of projects.
The development of many large and mid-size products can be modeled using a hierarchical structure that is similar to an organization chart. At the top of the hierarchy is the development of a product. Product development requires the development of many sub-components or xe2x80x9cdeliverables.xe2x80x9d In turn, the successful development of each deliverable may require the support of one or more projects. For example, the development of large scale computing system requires hardware and software deliverables. The hardware deliverables may include major system components such as an instruction processor and a storage controller, and the software deliverables may include major system components such as an operating system adaptation and system control functionality. Each of these deliverables may in turn include one or more projects that are provided by one or more organizations of engineers. For example, the storage controller may include a main storage project and a second level cache project, and the operating system adaptation may include modifications to three software subsystems, each managed by a different project manager.
The hierarchical relationships between projects affects the manner in which negotiation for resources, i.e., personnel, is performed. During the planning stages of a project, the person who has authority over a group of people estimates the scope of work required, the time required to complete the work, and the number of people required to complete the project. These estimates are made by a project manager and are reported up a level in the management hierarchy as the project estimate. Oftentimes, the estimated, required number of people is less than the number of people that are actually funded by upper management. Thus, the various levels of management must negotiate funding levels and project content so that people resources can be allocated to achieve management objectives.
In an example prior system used by Unisys Corporation, resource allocation was reported using a tool called xe2x80x9cRDPxe2x80x9d (Research and Development Planning), which modeled all work using two levels: parents and children. RDP models products and deliverables as parents and children, respectively, without further levels in a project hierarchy. Thus, negotiating for resources and project content and seeing the implications of shifts in resource allocation on all projects in a project hierarchy was difficult.
A method and system that addresses the aforementioned problems, as well as other related problems, are therefore desirable.
A method and system for allocating resources amongst a hierarchy of projects are provided in various embodiments of the invention. In a first embodiment, a method is provided for management of resources estimated to be required to develop a product and distribution of resources allocated for the development of the product. A hierarchy of projects required for completion of the product is defined in a database, estimations of resource requirements are associated with the respective projects, and project-level target allocations of resources are associated with the respective projects. The project-level target allocations of resources are automatically summed for a calculated total target allocation of resources, and the calculated total target allocation of resources is associated with the product. An actual total target allocation of resources is assigned to the product, and the hierarchy of projects, associated estimations of resource requirements, project-level target allocations, the calculated total target allocation, and the actual target allocation of resources for the product are interactively displayed.
In another embodiment, a computing apparatus is provided for management of resources estimated to be required to develop a product and distribution of resources allocated for the development of the product. The apparatus comprises a resource management database; means for establishing in a resource management database a definition of a hierarchy of projects required for completion of the product; means for establishing in the resource management database estimations of resource requirements for the respective projects; means for establishing in the resource management database project-level target allocations of resources for the respective projects; means for establishing in the resource management database a calculated total of the project-level target allocations of resources for the product; means for establishing in the resource management database an actual total target allocation of resources for the product; and means for interactively displaying the hierarchy of projects, associated estimations of resource requirements, project-level target allocations, the calculated total target allocation, and the actual target allocation of resources for the product.
In another embodiment, a system is provided for management of resources estimated to be required to develop a product and distribution of resources allocated for the development of the product The system comprises a resource management database, a server computer system coupled to the resource management database, and a client computer system coupled to the server system. The server system is configured and arranged to host resource management software, wherein the resource management software is configured to cause the server system to create in the resource management database a hierarchy of projects required for completion of the product, associate with the respective projects estimations of resource requirements, associate with the respective projects project-level target allocations of resources, automatically sum the project-level target allocations for a calculated total target allocation of resources for the product, associate with the product an actual total target allocation of resources, and interactively display the hierarchy of projects, estimations of resource requirements, project-level target allocations, the calculated total target allocation, and actual target allocation. The client computer system is configured and arranged to host a client user-interface program, the user-interface program configured to provide user input to and receive user output from the resource management software.